大 O 记号(Big-O notation):用于描述算法或函数在输入规模增大时的增长速度的上界,常用来表达时间复杂度或空间复杂度(如 O(n)、O(n log n)、O(n²))。它关注“规模变大时大致有多快”,通常忽略常数因子和低阶项。另有相关记号如 Big-Theta(Θ)、Big-Omega(Ω) 等。
/ˌbɪɡ ˈoʊ noʊˈteɪʃən/
Big-O notation helps compare algorithms as the input size grows.
大 O 记号帮助我们在输入规模增大时比较不同算法的表现。
Although two implementations may be fast on small inputs, Big-O notation reveals which one scales better for large datasets.
尽管两种实现处理小输入时都可能很快,但大 O 记号能揭示在大数据集上哪一种扩展性更好。
“Big-O”中的 O 源自德语单词 Ordnung(意为“阶、数量级”),早期与数学中的“阶”概念相关;它属于更广义的兰道记号(Landau notation)体系,用于描述函数增长率。后来在计算机科学中被广泛采用,用来概括算法复杂度的上界。